package com.fivefu.core.hik.dto.response;

import com.fivefu.core.hik.entity.DbHikDevice;
import io.swagger.annotations.ApiModelProperty;

/**
 * 增量获取编码设备数据返回信息
 */
public class EncodeDeviceTimeRangeResp {

    //设备系列
    private String deviceType;

    //所属区域
    private String regionIndexCode;

    //设备序列号
    private String devSerialNum;

    //比官网多出的字段
    private String dataVersion;

    //ip地址
    private String ip;

    //设备驱动
    private String deviceKey;

    //资源唯一编码
    private String indexCode;

    //比官网多出的字段
    private String description;

    //比官网多出的字段
    private Integer isCascade;

    //更新时间
    private String updateTime;

    //比官网多出的字段
    private Integer sort;

    //接入协议
    private String treatyType;

    //厂商
    private String manufacturer;

    //比官网多出的字段
    private Integer disOrder;

    //网域
    private String netZoneId;

    //能力集
    private String capability;

    //端口
    private String port;

    //创建时间
    private String createTime;

    //资源名称
    private String name;

    //主动设备编号
    private String deviceCode;

    //资源类型
    private String resourceType;

    //状态小于0则资源已删除
    private Integer status;

    public String getCapability() {
        return capability;
    }

    public void setCapability(String capability) {
        this.capability = capability;
    }

    public String getDeviceKey() {
        return deviceKey;
    }

    public void setDeviceKey(String deviceKey) {
        this.deviceKey = deviceKey;
    }

    public String getDeviceType() {
        return deviceType;
    }

    public void setDeviceType(String deviceType) {
        this.deviceType = deviceType;
    }

    public String getDevSerialNum() {
        return devSerialNum;
    }

    public void setDevSerialNum(String devSerialNum) {
        this.devSerialNum = devSerialNum;
    }

    public String getDeviceCode() {
        return deviceCode;
    }

    public void setDeviceCode(String deviceCode) {
        this.deviceCode = deviceCode;
    }

    public String getIndexCode() {
        return indexCode;
    }

    public void setIndexCode(String indexCode) {
        this.indexCode = indexCode;
    }

    public String getManufacturer() {
        return manufacturer;
    }

    public void setManufacturer(String manufacturer) {
        this.manufacturer = manufacturer;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getRegionIndexCode() {
        return regionIndexCode;
    }

    public void setRegionIndexCode(String regionIndexCode) {
        this.regionIndexCode = regionIndexCode;
    }

    public String getResourceType() {
        return resourceType;
    }

    public void setResourceType(String resourceType) {
        this.resourceType = resourceType;
    }

    public String getTreatyType() {
        return treatyType;
    }

    public void setTreatyType(String treatyType) {
        this.treatyType = treatyType;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getDataVersion() {
        return dataVersion;
    }

    public void setDataVersion(String dataVersion) {
        this.dataVersion = dataVersion;
    }

    public String getIp() {
        return ip;
    }

    public void setIp(String ip) {
        this.ip = ip;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public Integer getIsCascade() {
        return isCascade;
    }

    public void setIsCascade(Integer isCascade) {
        this.isCascade = isCascade;
    }

    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }

    public Integer getDisOrder() {
        return disOrder;
    }

    public void setDisOrder(Integer disOrder) {
        this.disOrder = disOrder;
    }

    public String getNetZoneId() {
        return netZoneId;
    }

    public void setNetZoneId(String netZoneId) {
        this.netZoneId = netZoneId;
    }

    public String getPort() {
        return port;
    }

    public void setPort(String port) {
        this.port = port;
    }

    @Override
    public String toString() {
        return "EncodeDeviceTimeRangeResp{" +
                "deviceType='" + deviceType + '\'' +
                ", regionIndexCode='" + regionIndexCode + '\'' +
                ", devSerialNum='" + devSerialNum + '\'' +
                ", dataVersion='" + dataVersion + '\'' +
                ", ip='" + ip + '\'' +
                ", deviceKey='" + deviceKey + '\'' +
                ", indexCode='" + indexCode + '\'' +
                ", description='" + description + '\'' +
                ", isCascade=" + isCascade +
                ", updateTime='" + updateTime + '\'' +
                ", sort=" + sort +
                ", treatyType='" + treatyType + '\'' +
                ", manufacturer='" + manufacturer + '\'' +
                ", disOrder=" + disOrder +
                ", netZoneId='" + netZoneId + '\'' +
                ", capability='" + capability + '\'' +
                ", port='" + port + '\'' +
                ", createTime='" + createTime + '\'' +
                ", name='" + name + '\'' +
                ", deviceCode='" + deviceCode + '\'' +
                ", resourceType='" + resourceType + '\'' +
                ", status=" + status +
                '}';
    }

    public DbHikDevice replaceDbHikDevice() {
        DbHikDevice device = new DbHikDevice();
        device.setDeviceType(this.getDeviceType());//设备系列
        device.setDevSerialNum(this.getDevSerialNum());//设备序列号
        device.setIp(this.getIp());//IP地址
        device.setDeviceKey(this.getDeviceKey());//设备驱动
        device.setIndexCode(this.getIndexCode());//资源唯一编码
        device.setUpdateTime(this.getUpdateTime());//更新时间
        device.setTreatyType(this.getTreatyType());//接入协议
        device.setManufacturer(this.getManufacturer());//厂商
        device.setNetZoneId(this.getNetZoneId());//网域
        device.setCapability(this.getCapability());//能力集
        device.setCreateTime(this.getCreateTime());//创建时间
        device.setName(this.getName());//资源名称
        device.setResourceType(this.getResourceType());//资源类型
        device.setDeviceStatus(this.getStatus());//状态
        return device;
    }
}
